var layer;
var form;
$(function () {
    layui.use(['form', 'layer'], function () {
        layer = layui.layer;
        form = layui.form;
        form.on('submit(save)', function (data) {
            var b = parseInt($('.carList :checkbox:checked').length);
            if (b <= 0) {
                layer.msg('请选择要结算的商品');
                return false;
            }
            layer.load(2);
            $.ajax({
                type: 'POST',
                url: '/index/cart/submit.html',
                data: $("#form").serialize(),
                dataType: "json",
                success: function (data) {
                    layer.closeAll();
                    if (data.code === 1) {
                        location.href = data.url;
                    } else {
                        layer.msg(data.msg);
                    }
                }
            });
            return false;
        })
    });
    numInput('.minus', '.add', '.inpNum');
    /** 原点 2020年7月18日16:53:52 清空购物车 */
    $(".cancel").click(function () {
        layer.confirm("确定要清空购物车吗?", {title: '请确认'}, function () {
            layer.closeAll();
            layer.load(2);
            $.ajax({
                type: 'POST',
                url: '/index/cart/delete',
                dataType: "json",
                success: function (data) {
                    layer.closeAll();
                    if (data.code === 1) {
                        layer.msg(data.msg, {time: 1000}, function () {
                            location.reload();
                        });
                    } else {
                        layer.msg(data.msg);
                    }
                }
            });
        });
    });

    $(".delete").click(function () {
        var id = $(this).attr('data-id');
        layer.confirm("确定要删除当前商品吗?", {title: '请确认'}, function () {
            layer.load(2);
            $.ajax({
                type: 'POST',
                url: '/index/cart/edit.html',
                data: {id: id, type: 3},
                dataType: "json",
                success: function (data) {
                    layer.closeAll();
                    if (data.code === 1) {
                        layer.msg(data.msg, {time: 1000}, function () {
                            location.reload();
                        });
                    } else {
                        layer.msg(data.msg);
                    }
                }
            });
        });
    });

    $(".empty").click(function (){
        layer.confirm('确定要清空购物车吗？', {title: '请确认'}, function (index) {
            _ajax('/index/cart/emptyCart.html');
        });
    });

    /** 原点 2020年7月18日14:50:28 单独选中 */
    $('.one').click(function () {
        var a = $(this).parents('.parent').find('.price').text();
        var b = $(this).parents('.parent').find('.inpNum').val();
        var c = parseFloat($('.amount').text());
        var d = parseFloat(a) * parseInt(b);
        if (this.checked) {
            $('.amount').text((c + d).toFixed(2));
        } else {
            $('.amount').text((c - d).toFixed(2));
        }
        cancel();
    });

    /** 原点 2020年7月18日14:53:31 全选反选操作*/
    $(".checkbox_all").click(function () {
        var a = sum();
        var b = parseFloat($('.amount').text());
        if (this.checked) {
            $(".carList :checkbox").prop("checked", true);
            $('.amount').text((b + parseFloat(a)).toFixed(2));
        } else {
            $(".carList :checkbox").prop("checked", false);
            $('.amount').text('0.00');
        }
    });

    /** 原点 2020年7月18日14:53:45 计算总价格*/
    function sum() {
        var amount = 0;
        $(".price").each(function () {
            var n = $(this).parent('.bsclr_org').next('.carNum').children('.inpNum').val();
            var s = parseFloat($(this).text()) * parseInt(n);
            amount += s;
        });
        return amount;
    }

    /** 原点 2020年7月18日15:00:17 判断是否全部选中 */
    function cancel() {
        var a = parseInt($('.carList :checkbox').length);
        var b = parseInt($('.carList :checkbox:checked').length);
        if (a === b) {
            $(".carBtm .checkbox_all").prop("checked", true);
        } else {
            $(".carBtm .checkbox_all").prop("checked", false);
        }
    }

    // 禁止数字输入框输入负数
    function numInput(reduceNum, addNum, valNum) {
        // 数量 加减
        var min = 1;
        var values = $(valNum);
        // 只能输入正整数
        values.on('keyup', function () {
            if (!/^\d+$/.test(this.value)) {
                this.value = min;
            }
        })
        // 监听input
        $(valNum).keyup(function () {
            var values = $(valNum).val();
            if (values < 0) {
                $(this).val(min);
            }
        });
        $(addNum).click(function () {
            var values = $(this).siblings(valNum).val();
            values++;
            $(this).siblings(valNum).val(values);

            var a = $(this).parents('.btm').find('.price').text();
            var p = $(this).parents('.parent').find('.one').is(":checked");
            var id = $(this).parents('.parent').find('.one').val();

            as(a, 1, values, p, id)
        });
        $(reduceNum).click(function () {
            var values = $(this).siblings(valNum).val();
            var a = $(this).parents('.btm').find('.price').text();
            var p = $(this).parents('.parent').find('.one').is(":checked");
            var id = $(this).parents('.parent').find('.one').val();
            values--;

            if (values < min) {
                $(this).siblings(valNum).val(min);
                as(a, 2, min, p, id, 1)
            } else {
                $(this).siblings(valNum).val(values);
                as(a, 2, values, p, id)
            }

        });

        // // input 禁止滚动
        // $(valNum)[0].addEventListener('DOMMouseScroll', MouseWheel, false);
        //
        // function MouseWheel(event) {
        //     event = event || window.event;
        //     event.preventDefault();
        // }
    }

    /** 原点 2020年7月18日15:35:28 加减操作*/
    function as(a, k, v, p, id, s) {
        if (!s) {
            $.ajax({
                type: 'POST',
                url: '/index/cart/edit.html',
                data: {id: id, type: k},
                dataType: "json",
                success: function (data) {
                    if (data.code != 1) {
                        layer.msg(data.msg);
                    }
                }
            });

            if (p == true) {
                var c = parseFloat($('.amount').text());

                if (k == 1) {

                    $('.amount').text((parseFloat(a) + c).toFixed(2));
                } else {
                    $('.amount').text((c - parseFloat(a)).toFixed(2));
                }
            }

        }
    }

    // tab 切换
    function tabs(tabMenu, tabMenuAct, tabCount, tabCountAct) {
        $(tabMenu).click(function () {
            let that = this;
            let i = $(that).index(tabMenu);
            $(tabMenu).eq(i).addClass(tabMenuAct).siblings().removeClass(tabMenuAct);
            $(tabCount).eq(i).addClass(tabCountAct).siblings().removeClass(tabCountAct);
        })
    }
});
